/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package co.edu.eam.persitencia.dao.Interfaz;

import co.edu.eam.persitencia.entidades.Inventario;
import co.edu.eam.persitencia.entidades.Laboratorio;
import co.edu.eam.persitencia.entidades.Medicamento;
import java.util.Date;
import java.util.List;

/**
 *
 * @author Erika
 */
public interface IDAOMedicamento {
///////////////////////////////////////CRUD MEDICAMENT0////////////////////////////////////////

    public void crearMedicamento(Medicamento medicamento) throws Exception;

    public void editarMedicamento(Medicamento medicamento) throws Exception;

    public Medicamento buscarMedicamento(Long id) throws Exception;

    public void eliminarMedicamento(Medicamento medicamento) throws Exception;

    public List<Medicamento> listarMedicamento() throws Exception;

    public List<Medicamento> listarMedicamentoLaB(Laboratorio lab) throws Exception;

///////////////////////////////CRUD LABORATORIO////////////////////////////////////////
    public void crearLaboratorio(Laboratorio lab) throws Exception;

    public Laboratorio buscarLaboratorio(Long codigo) throws Exception;

    public void eliminarLaboratorio(Laboratorio laboratorio) throws Exception;

    public List<Laboratorio> listarLaboratorio() throws Exception;

    public void editarLaboratorio(Laboratorio lab) throws Exception;

//////////////////////////////CRUD INVENTARIO////////////////////////////////////////////////
    public void crearInventario(Inventario inv) throws Exception;

    public void editarInventario(Inventario inv) throws Exception;

    public Inventario buscarInventario(Long codigo) throws Exception;

    public Inventario buscarArticulo(String cod) throws Exception;

    public void eliminarInventario(Inventario inventario) throws Exception;

    public List<Medicamento> listarSalidas(Date fechaSalida) throws Exception;

    public List<Medicamento> listarEntradas(Date fechaEntrada) throws Exception;
}
